// 纯虚函数和抽象类
#include <iostream>
using namespace std;
class Father {
public:
    // 纯虚函数
    virtual void func() = 0;
    // 只要有一个纯虚函数就是抽象类
    // 抽象类特点：不能实例化，子类需重写父类中纯虚函数，否则也是抽象类
};
class Son {
public:
    void func() {
        cout << "son.func" << endl;
    }
};
void test1() {
    // Father f1;  // 非法
    Son *s1 = new Son;
    s1->func();
}
int main(void) {
    test1();
    
    return 0;
}